﻿//Created by Action Script Viewer - http://www.buraks.com/asv
package de.polygonal.ds.sort {
    import de.polygonal.ds.*;

    public function sLinkedInsertionSort(_arg1:SListNode, _arg2:Boolean=false):SListNode{
        var _local7:int;
        var _local8:Number;
        var _local3:Array = [];
        var _local4:int;
        var _local5:SListNode = _arg1;
        var _local6:SListNode = _arg1;
        while (_local6) {
            var _temp1 = _local4;
            _local4 = (_local4 + 1);
            var _local10 = _temp1;
            _local3[_local10] = _local6.data;
            _local6 = _local6.next;
        };
        if (_local4 <= 1){
            return (_local5);
        };
        var _local9 = 1;
        while (_local9 < _local4) {
            _local8 = _local3[_local9];
            _local7 = _local9;
            while ((((_local7 > 0)) && ((_local3[int((_local7 - 1))] > _local8)))) {
                _local3[_local7] = _local3[int((_local7 - 1))];
                _local7--;
            };
            _local3[_local7] = _local8;
            _local9++;
        };
        _local6 = _local5;
        _local9 = 0;
        while (_local6) {
            var _temp2 = _local9;
            _local9 = (_local9 + 1);
            _local6.data = _local3[_temp2];
            _local6 = _local6.next;
        };
        return (_local5);
    }
}//package de.polygonal.ds.sort 
